package com.cskaoyan.mall.commons.constant;

import com.alibaba.fastjson.JSON;
import com.cskaoyan.mall.commons.result.UserGetLoginDto;

import javax.servlet.http.HttpServletRequest;

/**
 * @Aurhor: 帅的一批
 * @CreateAt: 2022/10/25 19:56
 * @Description:
 * @PACKAGE_NAME： com.cskaoyan.mall.commons.constant
 */
public class ConstantValue {

    /**
     * 网关使用 网管将前端传来的cookie中名为access_token 的cookie信息
     */
    public static final String LOGIN_TOKEN = "access_token";

    /**
     * 用户信息 类型是com.cskaoyan.mall.commons.result.UserGetLoginDto的json字符串
     * 里面有用户id和用户名
     */

    public static final String TOKEN_USER_INFO = "user_info";

    /**
     * 验证码使用 cookie中kaptcha_uuid 代码验证码的id
     */
    public static final String KAPTCHA_UUID = "kaptcha_uuid";

    /**
     * 获取请求中的用户数据对象
     * @param request
     * @return
     */
    public static UserGetLoginDto userGetLoginDto(HttpServletRequest request){
        String header = request.getHeader(ConstantValue.TOKEN_USER_INFO);
        UserGetLoginDto userGetLoginDto = JSON.parseObject(header, UserGetLoginDto.class);
        return userGetLoginDto;
    }
}
